UniFirebaseLoginConfigDefaults.userFactoryFunc   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 1
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 1
dl 0
loc 1
rs 10
c 0
b 0
f 0
cc 1
1
import { User as FirebaseUser } from "firebase";
2
import { UserModel } from "../model/user-model";
3
import { IAuthProviderOptions } from "../services/i-auth-provider-options";
4
import { IUniFirebaseLoginConfig } from "../services/i-uni-firebase-login-config";
5
6
export class UniFirebaseLoginConfigDefaults<User extends UserModel = UserModel>
7
  implements IUniFirebaseLoginConfig<User> {
8
  public afterSignInPage = "/";
9
  public signInPage = "/sign-in";
10
  public storage: "firestore" | false = false;
11
  public storageUserTable = "users";
12
  public providers: IAuthProviderOptions = {};
13
  public redirectBack: boolean = true;
14
  public userFactoryFunc: () => User = () => new UserModel() as User;
15
  public mapFirebaseUserToStorageFunc: (firebaseUser: FirebaseUser) => User = (
16
    firebaseUser: FirebaseUser,
17
  ) => {
18
    return new UserModel({
19
      displayName: firebaseUser.displayName,
20
      email: firebaseUser.email,
21
      phoneNumber: firebaseUser.phoneNumber,
22
      photoURL: firebaseUser.photoURL,
23
      uid: firebaseUser.uid,
24
    }) as User;
25
  };
26
}
27